﻿#ifndef CIRCULARPROGRESSBAR_H
#define CIRCULARPROGRESSBAR_H

#include <QWidget>
#include <QColor>

class CircularProgressBar : public QWidget {
    Q_OBJECT

public:
    explicit CircularProgressBar(QWidget *parent = nullptr);

    void setValue(int value); // 设置进度值 (0-100)
    void setForegroundColor(const QColor &color); // 设置前景颜色
    void setBackgroundColor(const QColor &color); // 设置背景颜色
    void setBorderTransparent(bool transparent); // 设置边框透明
    void setCornerRadius(int radius); // 设置圆角半径
    void setFontSize(int size); // 设置字体大小
    void setFontColor(const QColor &color); // 设置字体颜色
    void setRingWidth(int width); // 设置圆环宽度

protected:
    void paintEvent(QPaintEvent *event) override;

private:
    int value; // 当前进度值
    QColor foregroundColor; // 前景颜色
    QColor backgroundColor; // 背景颜色
    bool borderTransparent; // 是否边框透明
    int cornerRadius; // 圆角半径
    int fontSize; // 字体大小
    QColor fontColor; // 字体颜色
    int ringWidth; // 圆环宽度
};

#endif // CIRCULARPROGRESSBAR_H
